Currently, a persistent attack can compromise a computing device and prevent the computing device from performing a software update. In general, the computing device performs a software update by retrieving a latest software from an update server, performing a reboot, and loading the latest software during a boot-up process. However, the persistent attack can prevent the computing device from communicating with the update server, rebooting after retrieving the latest software, or loading the latest software during the boot-up process. Due to the risk of a persistent attack, the computing device cannot be trusted to consistently perform a software update.